
#ifndef RTACCEPTORUDP_H
#define RTACCEPTORUDP_H

#include "RtAcceptorBase.h"
#include "RtInetAddr.h"
#include "RtUtilClasses.h"

class CRtUdpEndpointManager;

class /*RT_API_EXPORT*/ CRtAcceptorUdp 
	: public CRtAcceptorBase
	, public CRtStopFlag
{
public:
	CRtAcceptorUdp();
	virtual ~CRtAcceptorUdp();
	
	// interface IRtAcceptor
	virtual RtResult StartListen(
		IRtAcceptorConnectorSink *aSink,
		const CRtInetAddr &aAddrListen);
	virtual RtResult StopListen(RtResult aReason);

	void ListenForRudp() { m_listenForRudp = TRUE; }

private:
	CRtUdpEndpointManager* m_pEndpointManager;
	CRtInetAddr m_AddrLocal;
	BOOL m_listenForRudp;
};

#endif // !RTACCEPTORUDP_H
